이 포스트는 한빛미디어 블로그에도 소개되어 있습니다.
Introduction
- 안녕하세요, “실무로 통하는 인과추론 with 파이썬” 역자 신진수입니다.
- 이 포스트는 번역서의 첫 번째 컨텐츠인 “실무에 인과추론 적용하기 위한 험난한 5단계 여정”에 대해 소개할 예정입니다.
에필로그 배경
운이 좋게도 한빛미디어와 오라일리의 지원으로 책을 번역하며 제 생각을 에필로그에 담을 수 있었습니다. 첫 번역서를 작업하면서 책의 다섯 페이지에 제 생각을 담은 글을 쓸 수 있어 매우 기쁘네요. 지분으로 보면, 99%의 번역과 1%의 글쓰기라고 해야할까요😁
에필로그를 적은 배경은 다음과 같습니다.
- 파편화된 책 내용을 사례(ex.프라임 카드)와 함께 실무 스토리로 재해석
- 조직의 문제 해결에 있어 도메인 지식과 협업의 중요성 강조
- AGI 시대에 더욱 중요해질 “#인과추론”의 중요성 설명
에필로그를 바탕으로 책에서 파편화된 내용을 일목요연하게 정리하고 이론과 실무의 간극을 좁히려고 했습니다. 또한, 제가 겪은 경험을 바탕으로 실무자가 초기에 직면할 수 있는 주요 고민들을 식별하고, 이 고민들을 해결하기 위한 인과추론 접근법에 대한 실질적인 조언을 제공하고자 했습니다.
인과추론 적용을 위한 험난한 여정
원인과 결과를 정확히 파악하는 것은 매우 중요하지만, 인과추론을 적용하는 과정은 종종 어려움을 동반합니다. 이 과정에서 제가 실제로 겪었던 경험을 프라임 카드 사례와 결합하여 이야기하고자 합니다. 이를 통해 인과추론을 실무에 적용하는 과정에서 발생하는 다음과 같은 단계들을 자세히 설명하겠습니다.
(1) 도메인 지식 습득
인과추론은 제품의 도메인과 밀접하게 연결되어 있습니다. 데이터 분석가라면 맡은 제품과 시장을 이해해야만 고객과 조직의 관점에서 문제가 무엇인지, 그리고 해당 문제의 크기는 어떠한지 정의할 수 있기 때문입니다. 프라임 카드 예시에서 여러분이 데이터 분석가 또는 과학자라면 카드의 종류와 특징 및 카드 결제 과정에 대해 이해하고 있어야 하죠.
(2) 신뢰 쌓기
카드 분야를 충분히 이해하고 있다면, 프라임 카드 문제 해결을 위해 기획, 개발, 마케팅 등 여러 부서와의 긴밀한 소통이 필수적입니다. 데이터 기반 의사결정은 초기에 내리기 쉽지 않습니다. 하지만, 데이터 사용이 어떻게 각자의 성과에 도움이 되는지를 데이터 분석가가 협업 구성원들에게 지속적으로 설득하고 신뢰를 쌓아간다면 충분히 데이터 기반의 의사결정을 내릴 수 있습니다. 데이터가 흐르는 조직을 구축하고자 한다면, 신뢰 형성을 위해 다음과 같은 단계들이 필요합니다.
- 라이브 대응 및 추출 요청: 함께 일하는 동료들과 신뢰를 형성하기 위한 첫 단계
- 주기적인 분석 자동화: 반복되는 업무는 자동화할 수 있도록 대시보드/플랫폼화하는 단계
- 분석 회의체: 대시보드를 통해 함께 문제를 탐색하고 개선할 목표 지표 함께 논의하는 단계
- 실험 및 선제적 분석: 데이터를 바탕으로 함께 조직의 문제를 해결할 수 있는 단계
(3) 실험 설계
자, 데이터 및 데이터 조직에 대한 협업부서의 신뢰가 쌓였습니다. 이제 프라임 카드에 대한 가설을 세우고 협업부서와 함께 실험을 설계해봅시다. 이때 필요한 과정을 다음과 같이 간단히 정리했습니다.
- 검증 가능한 가설 설정
- 목표 지표 정의: 협업 부서간 지표 합의가 필요하며 이 예시에서는 ’매출 증진’이 우선순위 지표primary index
- 가설 설정: “프라임 카드가 고객 구매금액을 늘리는 데 도움을 줄 수 있을 것이다.”
- 실험 대상 및 기간 설정
- 실험에 필요한 표본 크기 계산: 2장에서 배운 검정력과 통계적으로 신뢰할 수 있는 최소 탐지 가능 효과minimum detectable effect(MDE)를 고려해 설정
- 실험 대상 정의: 이 예시에서는 10,000명의 고객을 대상으로 프라임 카드 제공 여부를 결정하기 위해 실험군과 대조군을 무작위로 배정
- 실험 기간 설정: 실험 기간을 적절히 설정해야만 인과효과를 정확히 추정할 수 있음. 실험 기간이 너무 짧아도 인과효과 추정에 어려움이 존재하며, 계절적 문제가 아닌 프라임 카드로 인한 효과를 파악하기 위한 기간 설정이 필요
- 통제 가능한 요인 사전 파악
(4) 실험 진행 및 분석
(1)부터 (4)까지의 과정을 거쳐, 이제 책<실무로 통하는 인과추론 with 파이썬>에서 배운 인과추론 방법론을 실무에 적용하는 실험을 시작할 수 있습니다. 이 단계에서는 실험 그룹을 기반으로 사전에 설계된 목표 지표를 검증하고 분석하는 작업을 진행합니다.
- 실험 진행
- 지표 모니터링: 실험이 진행되는 동안, 고객 경험에 부정적인 요소(가드레일 지표guardrail index로 확인)가 있는지 및 실험에 영향을 주는 외부 요인이 있는지 모니터링
- 로그 확인: 실험 분석에 사용될 데이터가 잘 쌓이고 있는지 확인
- 실험 분석
- 불응 문제: 프라임 카드 제공은 무작위로 배정되었지만, 고객이 스스로 프라임 카드를 선택할 수 있는 불응 문제가 존재하며 이에 따른 적절한 도구변수 선택이 필요
- LATE 추정: 이 과정에서는 11.6절에서 배운 2단계 최소제곱법(2SLS)를 활용해 프라임 카드를 선택한 사람들의 효과를 추정
- 민감도 분석: 인과효과의 신뢰성 확보를 위해, 11.7절에서 배운 표준오차를 기반으로 신뢰구간을 계산. 추정값의 분산이 크다면 4.9절에 나온 CUPED 방법을 통해 잡음을 제거할 수 있음
- 실험 결과 리포트 및 대시보드 제공
(5) 실험을 바탕으로 의사결정 및 피드백
실험 분석을 마치고 나면, 인과효과에 대해 다음과 같은 비판적 질문을 던질 수 있어야 합니다. 예를 들어 실험이 원활하게 진행되지 않았다면 앞에서 살펴본 ①부터 ④까지의 과정에서 어떤 점이 부족했는지 파악하고 보완하는 것이 중요합니다.
- 도구변수 식별 가정: 도구변수에 대한 4가지 가정이 잘 지켜졌는가?
- 순응률: 순응률이 낮아서 예상보다 더 많은 표본이 필요했던 것은 아닌가?
또한, 프라임 카드의 개선 가능성에 대해 다음과 같은 질문을 고려해볼 수 있습니다.
- 개인화: 프라임 카드가 특히 효과적이었던 고객 그룹은 어떤 그룹인가?
- 신기 효과: 프라임 카드 도입 후, 얼마까지 효과가 지속되는가?
성공적인 A/B 테스트 결과가 나온다면, 은행은 프라임 카드 도입을 통한 매출 증대를 기대할 수 있습니다. 그러나 실제 제품에 반영하는 것은 A/B 테스트 결과뿐만 아니라 고객 경험과 서비스 상황(프라임 카드 유지 비용, 서비스 유지 리소스 등)을 고려하여 신중하게 결정되어야 합니다.
Reference
“실무로 통하는 인과추론 with 파이썬”을 읽으실 때, 잠시 쉬어가며 맨 뒷장의 에필로그를 읽어보시는 것을 추천드리며, 자세한 내용은 번역서의 에필로그 및 한빛미디어 공식 블로그를 참고해주세요. 그리고 댓글을 통해 저의 에필로그에 대한 여러분의 생각을 들려주세요!